<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h2>Promise的理解</h2>
</body>
<script>
    function getData1(flag) {
      return  new Promise((resolve,reject)=>{

        if(flag) {
            //逻辑操作
            resolve('ok111')
        }else {
            reject('no1111')
        }

      })
    }


    function getData2(flag) {
      return  new Promise((resolve,reject)=>{

        if(flag) {
            //逻辑操作
            resolve('ok2222')
        }else {
            reject('no2222')
        }

      })
    }


    function getData3(flag) {
      return  new Promise((resolve,reject)=>{

        if(flag) {
            //逻辑操作
            resolve('ok3333')
        }else {
            reject('no33333')
        }

      })
    }
    // getData(false)
    // .then(res=>{
    //     console.log('成功：',res)
    // })
    // .catch(err=>{
    //     console.log('失败：',err)
    // })


    // Promise.all([getData1(true),getData2(true),getData3(true)])
    // .then(res=>{
    //     console.log('res:',res)
    // })
    // .catch(err=>{
    //     console.log('err:',err)
    // })

    // Promise.race([getData1(false),getData2(true),getData3(true)])
    // .then(res=>{
    //     console.log('res:',res)
    // })
    // .catch(err=>{
    //     console.log('err:',err)
    // })

    let aaa;
    getData1(true)
    .then(res=>{
        console.log('成功：',res)
       aaa=res;
       
    })
    .catch(err=>{
        console.log('失败：',err)
        aaa=err
    })
    .finally(_=>{
        console.log('不管是谁都有结果',aaa)
    })


</script>
</html>